package com.ruoyi.management.complaint.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.management.complaint.ro.GetComplaintDetailParam;
import com.ruoyi.management.complaint.ro.GetComplaintHandlingParam;
import com.ruoyi.management.complaint.ro.GetComplaintListParam;
import com.ruoyi.management.complaint.vo.GetComplaintListVO;
import com.ruoyi.passenger.evaluationcomplaints.ro.GetEvaluationParam;

import java.util.List;

/**
 * 乘客评价Service接口
 *
 * @author ruoyi
 * @date 2021-11-29
 */
public interface ITOrderEvaluateService {
    /**
     * 查询乘客评价列表
     *
     * @param param
     * @return
     */
    List<GetComplaintListVO> selectTOrderEvaluateList(GetComplaintListParam param);

    /**
     * 查询乘客评价详细
     *
     * @param param
     * @return
     */
    AjaxResult selectTOrderEvaluateById(GetComplaintDetailParam param);

    /**
     * 投诉处理
     *
     * @param param
     * @return
     */
    AjaxResult complaintHandling(GetComplaintHandlingParam param);

    /**
     * 新增乘客评价
     *
     * @param param
     * @param loginUser 登陆人信息
     * @return
     */
    AjaxResult insertTOrderEvaluate(GetEvaluationParam param, LoginUser loginUser);

    /**
     * 对超时处理的投诉转入监管处理
     * @param overTime
     */
    void changeComplainStatusByOverTime(int overTime);
}
